package interfaces;

import java.awt.Graphics;
import java.util.ArrayList;

import objects.WorldObject;
import universe.Universe;

public interface AgentInterface {

	public void update(WorldObject object, Universe universe, double time);

	public void paint(Graphics g, WorldObject object);

	public boolean canUpdate(WorldObject object);

	// --------------------------------------------------------------------------------
	// getters / setters
	// --------------------------------------------------------------------------------

	public String getName();

	public void setName(String name);

	// --------------------------------------------------------------------------------

	public void setPriority(int priority);

	public int getPriority();

	// --------------------------------------------------------------------------------

	public int getID();

	public void setID(int id);

	// --------------------------------------------------------------------------------

	public ArrayList<ActionInterface> getActionsList();

	public void getActionsList(ArrayList<ActionInterface> actionList);
}
